namespace NewsReport.Entity.POCOModel
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;
    using System.Data.Entity.Spatial;

    [Table("Promulgator")]
    public partial class Promulgator
    {
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
        public Promulgator()
        {
            ArticleInfo = new HashSet<ArticleInfo>();
            AttentionInfo = new HashSet<AttentionInfo>();
            MessageInfo = new HashSet<MessageInfo>();
        }

        [Key]
        public int PrID { get; set; }

        [Required]
        [StringLength(20)]
        public string PrName { get; set; }

        [Required]
        [StringLength(40)]
        public string PrSign { get; set; }

        [Required]
        [StringLength(400)]
        public string PIntroduce { get; set; }

        [StringLength(200)]
        public string PImgUrl { get; set; }

        [Required]
        [StringLength(100)]
        public string PAddress { get; set; }

        [Required]
        [StringLength(40)]
        public string Pemail { get; set; }

        public int? TID { get; set; }

        public int? Pid { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<ArticleInfo> ArticleInfo { get; set; }

        public virtual ArticleType ArticleType { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<AttentionInfo> AttentionInfo { get; set; }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<MessageInfo> MessageInfo { get; set; }

        public virtual ProrLogin ProrLogin { get; set; }
    }
}
